package com.hnzbxy.api.biz.entity;

import com.wuwenze.poi.annotation.Excel;
import com.wuwenze.poi.annotation.ExcelField;
import lombok.Data;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * 班主任实体类（含Excel导出注解）
 * 对应数据库表：class_advisor
 */
@Data
@Excel("班主任信息表") // Excel表名
@Table(name = "class_advisor")
public class ClassAdvisor {

    /**
     * 班主任记录自增主键
     */
    @Id
    @Column(name = "id")
    @ExcelField(value = "编号", width = 50) // 与User类的编号宽度一致
    private Long id;

    /**
     * 班主任姓名
     */
    @Column(name = "name")
    @ExcelField(value = "姓名", width = 100) // 姓名宽度参考User的用户名
    private String name;

    /**
     * 班主任性别（1=男，2=女）
     */
    @Column(name = "gender")
    @ExcelField(
            value = "性别",
            readConverterExp = "1=男,2=女", // 导入时：Excel的"男"转1，"女"转2
            writeConverterExp = "1=男,2=女", // 导出时：1显示"男"，2显示"女"
            width = 50
    )
    private Integer gender;

    /**
     * 班主任手机号码
     */
    @Column(name = "phone")
    @ExcelField(value = "手机号码", width = 120) // 手机号较长，宽度略大于姓名
    private String phone;

    /**
     * 班主任电子邮箱
     */
    @Column(name = "email")
    @ExcelField(value = "电子邮箱", width = 180) // 邮箱长度较长，宽度设置更大
    private String email;

    /**
     * 班主任QQ号
     */
    @Column(name = "qq")
    @ExcelField(value = "QQ号", width = 100)
    private String qq;

    /**
     * 班主任微信号
     */
    @Column(name = "wechat")
    @ExcelField(value = "微信号", width = 100)
    private String wechat;
}